/*
 * TextStorageStrategy.cpp
 *
 *  Created on: 03/10/2009
 *      Author: nik0l4z
 */

#include "../../Strategies/Storage/TextStorageStrategy.h"

/*----------------Constructores % Destructores----------------*/

TextStorageStrategy::TextStorageStrategy() {
}

TextStorageStrategy::~TextStorageStrategy() {
   delete this->almacenamiento;
}
/*-------------------------------------------------------------*/



void TextStorageStrategy::saludar(){
	cout << "Soy un TextStorageStrategy" << endl;
}

int TextStorageStrategy::saveData(Dato * data){
	//preguntar que estrategia recurso estoy usando...
	// si simple no hago nada
	// si es directa tengo al savedata de la estrategia recurso.

	int fileReference = this->getStorage()->saveData(data);
	return fileReference;
}

int TextStorageStrategy::saveData(string data){
	//preguntar que estrategia recurso estoy usando...
	// si simple no hago nada
	// si es directa tengo al savedata de la estrategia recurso.
	int fileReference = this->getStorage()->saveData(data);
	return fileReference;
}



void TextStorageStrategy::deleteData(int fileReference){
	this->getStorage()->deleteData(fileReference);
}

void TextStorageStrategy::deleteData(list<Clave*> clave){
}

int TextStorageStrategy::updateData(Dato *data,int fileReference){
	this->getStorage()->updateData(fileReference,data);
	return fileReference;
}

void TextStorageStrategy::updateData(list<Dato*> datos){
}

/*---------------Getter & Setters-----------------------------*/

Almacenamiento *TextStorageStrategy::getStorage() const{
	return this->almacenamiento;
}

void TextStorageStrategy::setStorage(Almacenamiento *storage){
	this->almacenamiento = storage;
}
/*-------------------------------------------------------------*/
